Ext.define('CourseForm', {
	extend : 'Ext.window.Window',
	id : 'CourseFormWin',
	layout : 'fit',
	modal : true,
	title : '课程详情',
	height : 160,
	width : 400,
	maximizable : true,
	buttonAlign : 'center',

	initComponent : function() {
		this.formPanel = new Ext.form.Panel({
					layout : {
						type : 'table',
						columns : 1
					},
					bodyStyle : 'padding:10px',
					border : true,
					autoScroll : true,
					defaults : {
						labelWidth : 80,
						width : '100%',
						labelAlign : 'right',
						allowBlank : false,
						xtype : 'textfield'
					},
					items : [{
								fieldLabel : '课程名称',
								name : 'course.name'
							}, {
								fieldLabel : '年级',
								name : 'course.grade.oid',
								xtype : 'combo',
								valueField : 'oid',
								displayField : 'name',
								queryMode : 'local',
								editable: false,
								triggerAction : 'all',
								store : new Ext.data.JsonStore({
											autoLoad : true,
											fields : ['oid', 'name'],
											proxy : {
												type : 'ajax',
												url : __ctxPath + '/xskq/comboGrade.do',
												reader : {
													rootProperty : 'result'
												}
											}
										})							
							}, {
								name : 'course.oid',
								xtype : 'hidden',
								value : this.sid == null ? '' : this.sid
							}]
				});

		this.buttons = [{
					text : '保存',
					iconCls : 'btn-save',
					scope : this,
					handler : this.save
				}, {
					text : '关闭',
					iconCls : 'btn-cancel',
					scope : this,
					handler : this.cancel
				}];

		this.items = [this.formPanel];
		this.callParent();

		// 加载表单对应的数据
		if (this.sid) {
			this.formPanel.loadData({
						url : __ctxPath + '/xskq/getCourse.do?oid=' + this.sid,
						root : 'data',
						preName : 'course'
					});
		}
	},
	// 取消
	cancel : function() {
		this.close();
	},
	// 保存记录
	save : function() {
		$postForm({
					formPanel : this.formPanel,
					scope : this,
					url : __ctxPath + '/xskq/saveCourse.do',
					callback : function(fp, action) {
						var gridPanel = Ext.getCmp('CourseGrid');
						if (gridPanel != null) {
							gridPanel.getStore().reload();
						}
						this.close();
					}
				});
	}
});
